#ifndef USERPROFILEHEADER_H
#define USERPROFILEHEADER_H

#include <QWidget>
#include <QHBoxLayout>
#include <QLabel>
#include <QPixmap>
#include <QPushButton>
#include <QGraphicsView>
#include <QGraphicsPixmapItem>
#include "component/item/AvatarLabel.h"
#include "component/EditProfileDialog.h"
#include "component/EditSafeDialog.h"

class UserProfileHeader : public QWidget
{
    Q_OBJECT
public:
    explicit UserProfileHeader(QWidget *parent = nullptr);

    // public slots:
    //     void setAvatar(const QPixmap &pixmap);
    //     void setUsername(const QString &username);
    //     void setVisitCount(int count);
    //     void setArticleCount(int count);
    //     void setFollowerCount(int count);
    //     void setJoinDate(const QString &date);
    //     void setSignature(const QString &signature);

private:
    AvatarLabel *avatar;       // 头像
    QLabel *username;          // 用户名
    QLabel *visitCount;        // 访问量
    QLabel *articleCount;      // 文章数
    QLabel *followerCount;     // 粉丝量
    QLabel *joinDate;          // 入站时间
    QLabel *signature;         // 个性签名
    QPushButton *safeButton;   // 账户安全按钮
    QPushButton *editButton;   // 编辑资料按钮
    QPushButton *logoutButton; // 退出登录按钮

private slots:
    void onEditButtonClicked();
    void onSafeButtonClicked();

signals:
    void logoutSignal();
};

#endif // USERPROFILEHEADER_H
